package com.beesphere.products.throttling;

import java.io.Serializable;

public interface UnitOfWork extends Serializable {
	
	String 		getOwner ();
	
	String 		getId ();

	Object 		execute () throws Exception;
	
	Object		getProperty (String name);
	
	void 		setError (Throwable th);
	Throwable 	getError ();
	
	void 		setFinished (boolean finished);
	boolean		isFinished ();
	
	void 		setCanceled (boolean canceled);
	boolean		isCanceled ();
	
	void		release ();
	
	Object		getContext ();
	
}
